Software Development
Ruby Full Stack Development
Ruby Full Stack Development: Flow Control and Data Types
Ruby Full Stack Development: Introduction
Ruby Full Stack Development: Object-Oriented Programming with Ruby
Ruby Full Stack Development: RegEx and I/O with Ruby
Ruby Full Stack Development: Threads and Security
Ruby Full Stack Development: Unit Testing and Behavior Driven Development

Ruby Full Stack Development: Flow Control and Data Types

Course Number:
it_sddruf_02_enus
Lesson Objectives

Ruby Full Stack Development: Flow Control and Data Types

  • repeat tasks in a loop mechanism using for, times, upto, and downto in Ruby
  • use the while, unless, and until statements to repeat tasks in Ruby
  • use the ternary operator and case statement to make decisions in Ruby
  • use sequence ranges to walk through data sets in Ruby
  • use the Ruby associative array data type to store and use a built-in key-value store
  • work with and manipulate arrays in Ruby
  • understand how to use encoding methods in Ruby
  • use built-in mathematical methods on numeric values in Ruby
  • manipulate strings using the built-in string methods in Ruby
  • identify how bang methods are identified by convention and used in Ruby
  • recognize the importance of the ? In Ruby, and why and when this convention should be used

Overview/Description

Software development requires the use of data types and flow control in order to build most applications. Explore the Ruby data types and how to manipulate them using flow control and Ruby's built-in methods.



Target

Prerequisites: none

Ruby Full Stack Development: Introduction

Course Number:
it_sddruf_01_enus
Lesson Objectives

Ruby Full Stack Development: Introduction

  • describe the motivation and history of Ruby and why it should be used for software development
  • install and configure Ruby
  • create and run a simple Ruby script from the command line or PowerShell
  • use interactive Ruby (IRB)
  • recognize key Ruby identifiers like variables and constants
  • use string, numeric, and Boolean values in Ruby
  • apply comments and structure to a Ruby program
  • work with arithmetic and string operators to manipulate variables in Ruby
  • use Ruby methods to get user input and format output to the console
  • use if, else, and elsif to control the flow of a Ruby application
  • use logical operators to make decisions based on the values of variables in Ruby
  • work with blocks, procs, and lambdas to modularize and improve code readability in Ruby
  • identify how variable scope and namespaces work in Ruby

Overview/Description

Ruby is a very powerful language for web and software development. Explore the Ruby language, including how to code in Ruby and the basic building blocks of a Ruby application.



Target

Prerequisites: none

Ruby Full Stack Development: Object-Oriented Programming with Ruby

Course Number:
it_sddruf_03_enus
Lesson Objectives

Ruby Full Stack Development: Object-Oriented Programming with Ruby

  • describe object-oriented programming and how it is ingrained into Ruby
  • create a class and create an object from that class in Ruby
  • classify Ruby objects by their mutability and how that affects how they can be used
  • add class methods and instance methods to a class in Ruby
  • use a class or module from an external file in Ruby
  • use inheritance, polymorphism, and encapsulation to extend or modify a class in Ruby
  • use method overriding and method overloading to expand a class in Ruby
  • use inspect and other calls to get information about classes and instances in Ruby
  • add access controls to the methods of a class in Ruby to control which methods can be accessed
  • raise exceptions within Ruby code
  • handle exceptions in Ruby

Overview/Description

Object-oriented programming is a fundamental part of Ruby. Explore OOP and how classes and objects can be used to develop more sophisticated software.



Target

Prerequisites: none

Ruby Full Stack Development: RegEx and I/O with Ruby

Course Number:
it_sddruf_04_enus
Lesson Objectives

Ruby Full Stack Development: RegEx and I/O with Ruby

  • define and describe regular expressions and how they can be used
  • use regular expressions to evaluate if a value is valid in Ruby
  • manipulate and modify strings using regular expressions in Ruby
  • open, access, and close files and check if a file exists in Ruby
  • read and write string, byte, and character data to a file in Ruby
  • manipulate physical files on a drive by renaming, deleting, and copying files in Ruby
  • create, rename, move, and delete directories from within Ruby
  • install the MySQL2 Ruby Gem database connector
  • use the MySQL2 Client class to create a connection object to a MySQL database
  • create, read, update, and delete data from a database
  • use sorting, grouping, and aggregation when reading data from a database
  • use prepared statements to safely pass data to the database
  • use file and database input and output operations to manipulate files and data stored in databases

Overview/Description

Most applications will need to use input/output operations to either files or databases. Explore how Ruby can access and manipulate files on a disk, access data from databases, and how to use RegEx to manipulate data.



Target

Prerequisites: none

Ruby Full Stack Development: Threads and Security

Course Number:
it_sddruf_06_enus
Lesson Objectives

Ruby Full Stack Development: Threads and Security

  • create and use threads
  • use thread variables and thread keys to access thread data
  • recognize how to set thread priorities and use mutexes to access shared data and variables
  • identify potential race conditions and how deadlocks can occur between threads
  • recognize and use the Ruby Lang security issues list
  • recognize how to handle nil objects to avoid security issues
  • create immutable methods in order to provide additional safety
  • recognize how to encrypt and decrypt data using symmetric ciphers
  • use cryptographically secure hash functions to create hashes of data
  • create cryptographically secure random numbers
  • generate secure passwords using cryptographically secure random numbers and hash functions
  • describe and use security concepts and cryptography to protect data in Ruby

Overview/Description

Security has become a large issue with web development, and threads can provide significant performance gains on multi-core systems. Explore software security, encryption, and how to use threads.



Target

Prerequisites: none

Ruby Full Stack Development: Unit Testing and Behavior Driven Development

Course Number:
it_sddruf_05_enus
Lesson Objectives

Ruby Full Stack Development: Unit Testing and Behavior Driven Development

  • describe how unit testing can benefit development with Ruby
  • create and run a unit test
  • identify the different assertion types and how they can be used to test code
  • use assertions to validate numeric values
  • use assertions to validate strings or patterns in strings
  • use assertions to verify objects and object properties
  • set up and tear down prerequisites for running a unit test
  • describe behavior driven development and how it can be used for testing using Cucumber
  • install Cucumber and create a Cucumber project
  • create a scenario in a Cucumber .feature file
  • create the step definitions for a Cucumber scenario and run the test
  • use unit tests and behavior driven development to verify code functionality

Overview/Description

Testing is a critical part of software development. Explore the built-in unit testing features of Ruby, as well as how to use Cucumber and behavior driven development (BDD) to help with testing Ruby code.



Target

Prerequisites: none

Close Chat Live